Providing content-owner control in a networked device

ABSTRACT

The present invention provides an apparatus and methods for accessing media content by initiating a first view providing access to at least a portion of a first content within the first view, initiating a second view providing access to a second content within the second view and preventing the second content from being accessed with the first content in the first view. Additionally, access to a third content with the first content is allowed in the first view. The apparatus includes a first view configured to provide access to a first content, a second view configured to provide access to a second content, and a graphical subsystem configured to prevent the second content from being access in the first view. In one embodiment, the first view is a media content view, and the second view is a web view.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 10/190,307, filed Jul. 2, 2002, entitled METHOD AND APPARATUS FOR PROVIDING CONTENT-OWNER CONTROL IN A NETWORKED DEVICE, to Gewickey et al., which claims the benefit of U.S. Provisional Patent Application No. 60/302,778, filed Jul. 2, 2001, entitled SYSTEM FOR PROVIDING CONTENT-OWNER CONTROL OF PLAYBACK IN A NETWORKED DEVICE, to Gewickey et al., both of which references are incorporated herein by reference in their entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to the presentation of multimedia content, and more specifically to the presentation of media content combined with enhanced, interactively-obtained media content.

2. Discussion of the Related Art

The world wide web or Internet provides companies with immense resources to market their produces and educate potential customers about their products. Further, the Internet allows companies to easily and quickly update information to ensure the information accessed by individuals is the most current and up to date.

Other media, such as VHS videos, compact discs (CD), digital video discs (DVD) and other similar media do not provide the same, up to date information. Once these media are produced and distributed the content provided is restricted to what was released. As such, companies selling content contained on these types of media (e.g., movies on DVDs and music on CDs) cannot maintain the content current. The distribution of broadcast or video on demand (VOD) streams similarly cannot maintain the content as current. Typically, the assets for the streams are provided to a third party for broadcast, at which point, the content owner no longer has control over the content. As such, the release of fixed and/or streamed media content results in the user or consumer receiving dated content.

As such, companies producing and distributing content on such fixed media cannot provide customers with the most current content. Further, these companies loose out on opportunities to market additional, newly produced content through these fixed content media.

SUMMARY OF THE INVENTION

The present embodiment advantageously addresses the needs above as well as other needs by providing an apparatus and method for accessing media content. The method and apparatus initiate a first view providing access to at least a portion of a first content within the first view. A second view is initiated providing access to a second content within the second view. However, the present method and apparatus prevent the second content from being accessed with the first content in the first view. Further, access to a third content with the first content is allowed in the first view.

The present embodiment provides an apparatus for accessing content. The apparatus includes a first view configured to provide access to a first content; a second view configured to provide access to a second content; and a graphical subsystem configured to prevent the second content from being access in the first view. In one embodiment, the first view is a media content view and the first content is media content and the second view is a web view and the second content is Internet content wherein the first view is configured to provide access to a third content, where the third content is authorized to be associated with the first content.

The present embodiment additionally provides a method for providing access to content. The method includes the steps of receiving a key generated from information extracted from a first content; identifying the first content based on the key; receiving additional information regard the first content; authenticating the first content based on the key and the additional information; and allowing access to a second content, wherein the additional information includes an identifier. In one embodiment, the method further includes the steps of preventing access to the second content if the first content is not authenticated.

In one embodiment, a method for controlling accessing content is providing, which includes the steps of collecting content state information; receiving an input for control over the access to content, where the input defines more than one control operation; determining a first control operation to implement the input based on the content state information; implementing the first control operation when the content is in a first state; determining a second control operation to implement when the content is in a second state; and implementing the second control operation when the content is in the second state.

A method is further provided for controlling access to content, comprising the steps of: receiving an input for control over the access to content, where the input defines more than one control operation; determining which of a plurality of views is currently active; determining a first control operation to implement the input based on the active view; implementing the first control operation when a first view is active; determining a second control operation to implement when a second view is active; and implementing the second control operation when the second view is active.

One embodiment provides a method for accessing content, comprising the steps of: providing access to a first content; determining that a second content is associated with the first content; notifying a user that the second content is available; transitioning to the second content if a first selection is received and generating a notification event, wherein the step of notifying is initiated by the notification event.

Another embodiment provides an apparatus for accessing content. The apparatus include an event generator is configured to generate a notification event; a notification generator is coupled with the event generator to receive the notification event, wherein the notification generator is configured to generate a notification signal; and a content player coupled with the notification generator to receive the notification signal, wherein the content player is configured to generate a notification.

A method is further provided for accessing content, which includes the steps of: providing access to a first content; extracting information from the first content; identifying the first content; providing access to a second content authorized to be associated with the first content if the first content is identified; and preventing access to the second content if the first content is not identified.

A better understanding of the features and advantages of the present invention will be obtained by reference to the following detailed description of the invention and accompanying drawings that set forth an illustrative embodiment in which the principles of the invention are utilized.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features and advantages of the present invention will be more apparent from the following more particular description thereof, presented in conjunction with the following drawings wherein:

FIG. 1 depicts a simplified block diagram of a media player according to one embodiment of the present invention;

FIG. 2 shows a simplified block diagram of the web browser application programming interface for media services of FIG. 1 according to one embodiment of the present invention;

FIG. 3 shows a simplified block diagram of a display which is displaying content as well as unauthorized content;

FIG. 4 depicts a simplified block diagram showing two separate potential views provided by the present invention and transitions between the two views;

FIG. 5 depicts a simplified block diagram showing transitions between modes of operation in the content view;

FIG. 6 depicts a simplified flow diagram of a process for generating a notification to a user in the form of a graphical overlay;

FIG. 7 depicts a simplified block diagram showing transitions from one mode to another mode within a single view where histories and/or states are maintained for the separate views according to one embodiment of the present invention;

FIG. 8 shows a flow diagram of a process for initiating media content in a content view to allow a user to access the content; and

FIG. 9 depicts a simplified flow diagram of a process for determining if enhanced content is authorized to be associated with media content.

Corresponding reference characters indicate corresponding components throughout the several views of the drawings.

DETAILED DESCRIPTION OF THE DRAWINGS

The following description is not to be taken in a limiting sense, but is made merely for the purpose of describing the general principles of the different embodiments. The scope of the invention should be determined with reference to the claims.

One embodiment provides a method and apparatus for allowing access to digitally stored content. Further, the present method and apparatus provides access to media content that is locally stored and/or cached, stored on portable storage devices (such as compact discs (CDs), digital video discs (DVDs) and the like), remotely stored, received as broadcasted or streaming content, and the like. Media content can be substantially any type of content including, but not limited to, video content, audio content, data content, and substantially any other type of content. One embodiment additionally allows enhanced, revised and/or new media content to be used in cooperation with existing content and/or to replace some or all of existing content. The enhanced content also can be locally stored and/or cached, stored on portable storage devices (such as compact discs (CDs), digital video discs (DVDs) and the like), remotely stored, received as broadcasted or streaming content, and the like.

Typically, a remote storage is accessed through a network, such as the Internet, an internal office network or other similar networks. As such, the remote storage can be substantially any remote storage device. One embodiment is networked, for example networked with the Internet and thus web-enabled, to allow access to the Internet and substantially any Internet site and remote servers.

In allowing access to media content, the media content owners want to maintain control of the property rights of their media content. Media content owners are concerned about how their properties are accessed (e.g., played) and what data can be associated with their properties for essentially the entire content lifecycle. Content can not be considered as just the core video asset and/or audio asset. Content includes the core asset(s) plus substantially any integrated or embedded data structures, plus branding and control of the playback of the content, plus when the content can connect with a network (e.g., connect online with the Internet), where it can connect online and what can be accessed, played and/or viewed when it connects online. The present method and apparatus allows users to access media content (local and/or remote content) while allowing the media content owner to maintain control over the property rights, integrated and/or embedded data structures, branding and playback, when and where connections can be made with the Internet, what access can be established over the Internet and other similar controls.

The present embodiment further limits or prevents third parties from gaining access to and knowledge about the content and what content or portion of content is actively being accessed and/or played. As such the present embodiment allows users to access and use local and/or remote media content while allowing the content owners to avoid making the content and its operation publicly available. For example, in the case of a DVD player, the media content owners do not want third parties (whether it be the player manufacturers, online websites, Internet service providers (ISP) and other third parties) to know what section or piece of content is currently being played. As such the present embodiment prevents abuse of the media content that could cause problems for the content company, talent or others involved in the ownership and/or making of the content.

The present method and apparatus is configured to allow a user to gain access to media content, as well as access the network and/or Internet. In one embodiment, the present method and apparatus allow access to the Internet to supply the media content and/or supplement local media content. However, the present embodiment allows the media content owners to control how, when and/or what additional content is accessed in relation to their media content. For example, a movie production company like New Line Cinema would want to prevent a user viewing a movie owned by New Line to gain access to another movie production company's web site, such as Disney, while viewing the New Line movie. As such, the present embodiment provides New Line with control over what additional and/or enhanced content can be associated and viewed with content owned by New Line.

FIG. 1 depicts a simplified block diagram of a media player 120 according to one embodiment. The media player could be implemented as a DVD player, a CD player, video on demand (VOD) player, a computer, a set-top box, a personal or digital video recorder (PVR or DVR) and substantially any other media player. The media player, its components, its operation and communication are more fully described in U.S. patent application Ser. No. 09/935,756, entitled PRESENTATION OF MEDIA CONTENT FROM MULTIPLE MEDIA SOURCES, filed on Aug. 21, 2001, which is incorporated herein by reference in its entirety. In the embodiment shown in FIG. 1, the media player 120 includes both an embedded web browser 122 and media player hardware 124. The embedded web browser 122 includes a presentation engine 126. The embedded web browser is coupled with a web browser application programming interface for media services 130 that, in turn, is coupled with the media player hardware 124. The media player hardware includes a media navigator 132 and a media decoder 134. The media player navigator 132 includes a media services 136 and graphical subsystem 138. The media services is coupled with the media decoder 134. The media player 120 is coupled with a network 140, such as the internet or other network. The media services 136 can be considered as part of a media subsystem. The media subsystem is a superset of the media services 130 and includes a navigator for media content (e.g., DVD disc).

Utilizing the media player 120, a user is able to interact with enhanced content. For example, the media player allows a user to interact with an enhanced DVD on a television in a similar fashion as can be experienced on a computer. The display area of a television can show video and HTML content concurrently. This is accomplished through, in part, the embedded web browser 122 in the media player. In one embodiment, the HTML content can control the playback of the media content through embedded application programming interface (API) commands.

The embedded web browser 122 can be utilized to display the HTML content authored on enhanced-compatible disks, stored locally on device 120, or served from a remote server location on the network 120. The embedded web browser 122 also can support concurrent playback of video and audio while presenting HTML data and/or page(s).

The presentation engine 126 of the browser provides for the embedding of media content (e.g., a video) within web pages. Embedding media content within web pages define the location where the content is played. This location information is then parsed by the presentation engine and passed to an underlying content and/or image rendering engine.

The presentation engine 126 of the embedded web browser 122 can parse HTML instructions for controlling the media playback, generate graphic portions of the display, position a video window when it exists, interface directly with the underlying media navigator 132 and other similar functions. Enhanced-specific instructions are interpreted by the presentation engine 126 and passed to a media player abstraction layer, which-can be part of the embedded browser or developed by the media navigator manufacturer. This abstraction layer serves as an abstraction that makes it possible to map the browser into a media player-specific media navigator developed either by the semiconductor manufacturer or the player manufacturer. The media navigator additionally interfaces with underlying video and audio decoders.

The web browser application programming interface for media services 130 (or media navigator abstraction layer) is an interface layer between the presentation engine 126 and the media services 136. The media navigator abstraction layer 130 may be developed by the player manufacturer or the semiconductor manufacturer. To support a flexible and portable solution, the media navigator abstraction layer 130 is recommended to reside in between the browser 122 and the media navigator 132. Abstracting the communication between the browser 122 and navigator 132 offers a more robust and portable design, so that either the browser or the navigator can be changed in future player designs.

The media navigator 132 controls the decoding and playback of media in the drive. The media services 136 serves as a middleware layer between web browser application programming interface for media services 130 and the media navigator 132. The media services 136 facilitates content running in the web browser 122 to control the media navigator. The media services 136 allows the media navigator to work with substantially any web browser compliant with the present embodiment.

The media decoder 134 interfaces between the media interface hardware contained in the hardware 124 and the media navigator 132. The network and/or Internet 140 is shown as a specific example of the offsite content source.

FIG. 2 shows a simplified block diagram of the web browser application programming interface 150 for media services 130 of FIG. 1 according to one embodiment. In operation, the embedded web browser 154 receives HTML and/or JavaScript media content (for example, from a local or portable storage disk 156) which is displayed by presentation engine 126 (see FIG. 1). The embedded web browser 154 originates commands (as a result of user interaction which can be achieved through a remote in set-top systems, the keyboard or mouse in computing systems, the game interface in gaming systems, and the like), which are sent to the command handler 160 by way of the command API 162. The embedded web browser 154 also receives commands from the command handler by way of the command API. An example of such a command is Enhance.FullScreen(w) where media content is displayed on the full display screen. The embedded web browser 154 also receives cookies from the cookie manager 164 through the cookie API 166, generally in response to the accessing of an Internet website. The embedded web browser 154 also receives events (notifications) each of which is a notification that a respective defined event (generally related to media playback) has occurred. These events are generated by the event generator 170 and sent via the event API 172. The embedded web browser also queries properties from the properties handler 180 via the properties API 182. Properties are received in response to inquiries generated by the embedded web browser.

The command handler 160 controls the media navigator 184 including starting and stopping playback, changing audio streams, and displaying sub-pictures from JavaScript, among many things. In some embodiments, the media navigator can be similar to the media navigator 132 shown in FIG. 1. The command handler 160 provides live web content for non-enhanced disks when an active Internet connection is present through such commands as Enhance.NetConnect( ) and Enhance.NetDisconnect( ). The command handler 160 commands the bookmark manager 186 through such commands as Enhance.GotoBookmark( ) and Enhance.SaveBookmark( ). The command handler also interacts with the navigator state module 210 generally regarding user interaction. The navigator state module keeps the current state of the system and receives it directly from the decoder (or maps directly into it). When the bookmark manager 186 is going to save a bookmark and needs to know the current title, the bookmark manager receives it from the navigator state module 210 and places it in a bookmark and returns it to the command handler to allow it to provide a return value, for example to an Enhanced.SaveBookmark command.

The properties handler 180 provides the embedded web browser 154 with the ability to interrogate the navigator state module 210 for the media navigator 184 state which can include the properties (also referred to as attributes) of the elapsed time of the current title, the disk type, and the disk region, and other similar properties. The properties handler 180 maintains knowledge of system attributes. The event generator 170 monitors these attributes and triggers an event when a property is changed.

The event generator 170 provides notification to the media navigator 184 of events such as a change of title or chapter with web content (based on player time codes and the system time from a system timer 212). The event generator 170 notifies the properties handler 180 of event triggerings which are of interest to the properties handler. The event generator also provides events to the cookie manager 164 such as relate to the accessing of web pages, disk insertion, and disk ejection events.

The cookie manager 164 interacts with the identifier engine 214 to provide the ability to save information regarding the disc, platform, current user, the application programming interface (API) version in local storage and other information. The identifier engine 214 provides the ability to generate a unique identifier for the media which enables the media content (e.g., HTML and JavaScript from a DVD ROM) to carry out platform validation to ensure a certified device is present. The identifier engine 214, for example, provides the ability to serialize discs by reading and processing the information coded in the burst cutting area (BCA) of the disc. The BCA is read by the identifier engine and stored in the navigator state module 210. Hence commands such as Enhance.GetBCAField( ) can get the BCA information from the navigator state module after insertion of a disc. This BCA information provides the ability to uniquely identify each disk by serial number. Conditional access to content, usage tracking, and other marketing techniques are implemented thereby.

The identifier engine 214 gets the BCA information for the serial identifier (SerialID), hashes a video .IFO file to identify the title (e.g., labeled the MediaID), and then reads the ROM information to establish a data identifier (DataID) for the HTML/JavaScript data on the disc. The identifier engine provides this information to the navigator state module 210 which stores this information and provides it to whichever of the command handler 160, properties handler 180, or event generator 170 utilizes it. The identifier engine interacts with the navigator state module. The identifier engine 214 receives the BCA information (read differently than files) from the I/O controller 216. The identifier engine interacts with the cookie manager 164 to place disc related information read from the BCA into a system cookie.

The initialization module 220 provides the ability to establish the media navigator environment. The initialization module 220 allows the internal states and the state modules (e.g., the navigator state module 210) to be initialized. This initialization also includes reading the current disc in the drive and initializing a system cookie. It is noted that the embedded web browser 154 interfaces which allow registering a callback for the event handler are established at power-up as well.

The navigator state module 210 provides the ability to coordinate user interaction and media content behavior with front panel controls 236 and/or a remote control 234. In one embodiment, arbitration of control happens in the navigator itself between the remote and front panel controls. The navigator state module 210 additionally provides arbitration of control inputs (e.g., from a remote control, pointer, keyboard and the like) to determine how to implement the selected control based on a currently active view (i.e., whether a web view or a content view is currently active), as described further below. Media navigator 184 playback is initiated by the navigator state module 210 in response to input from the initialization module 220. The navigator state module receives locations of book marked points in the video playback from the bookmark manager 186 and controls the media navigator 184 accordingly.

The bookmark manager 186 provides the ability for the JavaScript content to mark spots in video playback, and to return later to the same spot along with the saved parameters which include angle, sub-picture, audio language, and so forth. The bookmark manager provides the ability to use video bookmarks in conjunction with web bookmarks. As an example, a video bookmark is set, a web session is launched going to a preset web book marked source to retrieve video-related information, then later a return to the video at the book marked spot occurs.

The system timer 212 provides time stamps to the event generator 170 for use in determining events for synchronization or controlled playback. The system monitor 222 interacts with the properties handler 180. In one embodiment, the system generates a timer tick (e.g., a 900 millisecond timer tick) as an event which the HTML/JavaScript 224 uses in updating the appropriate time displays as is needed. For systems that do not have a navigator that creates events the timer is used to poll the property values every T seconds (e.g., every 900 milliseconds) and compares the poll results with a previous result. If the result changes then an event is generated to the HTML/JavaScript.

The system initialization 226 provides initialization control whenever the system is turned on or reset. The media decoder 230 generally receives the media stream from the I/O controller 216 and decodes the media stream into video and audio signals for output. The media decoder 230 receives control from the media navigator 184. A CD-DA decoder 232 receives a media stream from I/O controller 216 and decodes it into audio which it provides as output. The I/O controller 216 interfaces with media storage 156 and controls its physical movement, playback, and provides the raw output to the appropriate decoder. The I/O controller 216 also provides disk state information to identifier engine 214. The media storage 156 can be any media storage such as, but not limited to, DVD-ROM, DVD-Audio, DVD-Video, CD-ROM, CD-Audio and the like.

One embodiment maintains at least two separate views or modes, a first view associated with the media content, and a second view associated with network content. A view can contain a variety of data, media and other information content all utilized together. The apparatus and method of the present embodiment provide for a separation of operation to ensure a separation of views for a user utilizing an electronics media device, such as, but not limited to, a set-top box, DVD player, computer, PVRs, digital media recorder/player and the like, which can be networked. As such, the present apparatus and method maintain data associated with media content in a first view (e.g., local data from the portable storage medium and/or remote data from the network) separate from unauthorized web content data in a second view received over the network (that is not necessarily related to the media content). This allows the media data owner to control the data that is associated with the media data and thus the data a user receives, and prevents unauthorized data from being associated with the media data.

In some embodiments, the present apparatus includes a monitor or other display to allow the apparatus to itself display media content. Some embodiments are incorporated within media players, such as DVD players, televisions, set top boxes, electronic game devices, computers and other such media players as described above. Typically, these media players have displays for displaying the media content (e.g., displaying a movie from a DVD). The display, whether in a media player or as part of the apparatus itself, allows a user to view media content as well as network content.

Some embodiments additionally cause controls for the operation of the apparatus to be displayed. For example, the apparatus can display information about a DVD to be played (e.g., the title of the DVD) and options for operating the apparatus (e.g., play, fast forward, games, director's interview, hyperlinks to enhanced content). The present embodiment can additionally allow a user to access the Internet. The display can show Internet options (e.g., web address, forward, backward, stop, home, search, hyperlinks and other such options) as well as Internet sites and content from Internet sites.

The present embodiment maintains an Internet, web and/or portal view as distinct and separate from the media content view. In one embodiment, a view can be defined as a presentation, to the consumer, of audio, video, text and static graphical or animated graphical assets, combined as per the content owner's desires. A view, using web technology can include, but is not limited to, HTML text, graphics (such as GIF and JPEG files) plus video and audio, synchronized and programmed using ECMAScript routines. These two separate views, maintain a separation of the media content and unauthorized web content. The views can be established through video frame buffers, one or more view planes and other similar techniques. Further, the present embodiment allows the web view to be as open as a computer web browser to access and display substantially any web site while remaining separate from the content view as determined by the media. This allows the present embodiment to maintain control of information and content displayed while the media content is being viewed. The present embodiment does allow the content view to incorporate and/or display content received over the network within the content view if the content received over the network is authorized by the media content owner. Maintaining control over the media content displayed allows media content owners, which use web-technology serviced from either the portable storage medium (e.g., disc) or the content-owner's network location, to maintain complete control of the display of the content owner's audio and/or visual media assets.

One embodiment, provides for the two separate views by maintaining and/or saving operation and/or state information with regards to each of the two separate domains or views, such as textual and graphical history and the media state information (such as DVD navigator state information which could include title, chapter, audio stream, subtitles stream, elapse time and the like) and other such information for a seamless operation. The present apparatus and method additionally provides for the identification and authentication of a content stream from the network and the content stream's associated content owner. The identification (the ability to detect a particular media stream) and authentication (ability to determine if the media stream is authentic, e.g., not an illegal copy) of the content stream and content owner can be achieved through the verification of a watermark, a serial number, a generated ID, media information, and other such identifications or combination of such identifications to appropriately provide the content owner the control over information and/or data viewed with the media content.

Content owner's retain the authority to determine the method of use, as in display or representation, of the visual assets which include, but are not limited to still images, moving images or stills captured from the moving images, and audio assets which include, but are not limited to spoken word, lyric and music. The present method and apparatus allow media content to be controlled by the content owner to protect against unauthorized use and/or association.

In web browsers of previous systems, a history is kept of Internet sites or pages visited, and navigation functions are provided (e.g., Home, Back and Forward) to allow the user to more easily shift between sites. The present method and apparatus maintain a separate history for the media-driven, content-based assets and for the web content. The present embodiment additionally manages and provides control over the media content and the separate web content. With regards to the content view, the media content has media-related state information that is maintained by a navigator. One example of state information is referred to as a bookmark. The media information can include but is not limited to a title, channel number and associated state information which is stored when switching to a web view and restored upon return to the media content view.

By maintaining the separation of views, the present embodiment can determine who should have control over the display and ensure control is limited to the entity determined to have control. As such, the present embodiment can ensure a content owner's control (e.g., exercise of rights) and minimizing potential unauthorized uses. An example of an unauthorized use would be the combination of a third party data streams (such as advertisements) with the core media stream (such as a DVD movie, streamed movie or music property) without the content owner's permission or authorization. Without such permission, the talent (movie actors, directors, musical artists and the like) may have or may assert claims to additional revenue streams potentially generated by the combination. Further, without such control, conflicts with existing partnerships or contracts may result. For example, Tiger Woods is a well know professional golfer who is sponsored by and has a contract with Nike, Inc. As such, Nike, Inc. would not want a first content featuring Tiger Woods to be associated with or viewed concurrently with a second content that included advertising for a competing shoe and/or clothing manufacturer, such as Reebok, International. Further, Tiger Woods would also probably want to prevent the first content being associated with a second content featuring advertising for Reebok without compensation, which could raise contractual issues. Ensuring the content owner's control of this combination attempts to avoid property and rights disputes and attempts to ensure that all parties are appropriately satisfied.

The present embodiment can employ a certification check to verify that the device meets these requirements before allowing the playback of the content. For example, the present embodiment can generate and maintain a list of authorized content and/or unauthorized content (e.g., authorized and/or unauthorized web sites and/or uniform resource locators (URL)).

The present embodiment additionally allows a user to access or navigate control features of the media (for example, displayed buttons of a DVD menu). In one embodiment, the navigation of the control features is achieved through up, down, left and right buttons or a mouse-pointer. The present embodiment further manages and allows the navigation of control features when the control features include network links (e.g., Hyper-Text Markup Language (HTML) hyperlinks) displayed in the same view. One embodiment includes a method and apparatus to control the selection of control items within a view (e.g., a mouse pointer, a 4-way navigation and the like).

Additionally, the present embodiment provides a method for informing the consumer that additional and/or enhanced content is available. In one embodiment this notification of enhanced content is achieved through the display of a symbol or logo on the content (in this case, the primary display). The logo can either be selected or “clicked” using the “enter” or “select” button on the remote control, or a predefined button can be included on the remote.

The apparatus and method can inform users and/or consumers that there are additional options and/or assets available with relation to some media content (remote or local) associated with the content. In one embodiment, the notification of additional assets is achieved through some graphical alert on the display, such as a graphical overlay on top of the video or a remote control light coming on. One embodiment allows the content owner to decide and/or dictate how and when notification occurs. This ability is not available in previous delivery systems, because the distributor of the content maintains this capability (e.g., a broadcaster in a cable systems), not the content owner.

Some embodiments automatically detect network connectivity and determines if additional updated content (associated with the media content) is available over the network. The present embodiment can identify (and if necessary authenticate) the content locally and then search for additional content locally and/or online. Additionally, the present embodiment can identify (and if necessary authenticate) the content online if connected with the network and then determining if additional content is available. If it is determined that additional content is available, the present embodiment can inform the user of the additional content and instruct the user how to access it, or automatically download and cache the data for presentation to the user.

The present method and apparatus allows a user to switch between the content view and the web view. Further, the present embodiment allows a user to transition, within the content view, from the content and from enhanced content to a web site that is authorized by the content and back to the enhanced content or content. Knowledge of the current state of the content and/or enhanced content (web pages) as well as audio/video assets are maintained or recorded to allow switching between the content, enhanced content and authorized web sites within the content view, and switching between the content and web views. Thus, the present embodiment maintains state information between the enhanced content presentation layer(s) and the media content (e.g., a DVD video) as the content is navigated.

The present embodiment maintains a content owner's control over the content and provides integrity of the audio and visual experience. As such, the use of audio and/or visual assets from a portable storage medium (e.g., DVD and CD), cached or the network is in full compliance with the content owner's wishes. One example of a misuse would be where video from a DVD is displayed (for example, on a web page) and unauthorized banner advertisements are additionally displayed or “wrapped” with the media content. FIG. 3 shows a simplified block diagram of a display 250 which is displaying content 252 (e.g., a video) as well as unauthorized content 254. One example of unauthorized content may be one or more advertising banners 254 that are related to an actor's image in a specific scene of the displayed media content.

As discussed above, the present embodiment can be networked to allow a user to gain access to the Internet and content distributed over the Internet. In maintaining separate views of media content and web content the present embodiment allows media player manufacturers the freedom in designing system players (e.g., PVRs, DVD players, CD players, computers and the like) to fully exploit the network and/or Internet capabilities without compromising content owner's rights (which can include intellectual property rights, talent rights, screen actors guild (SAG), and other similar rights). Unlike a more open, programmable computer platform (for example, a Windows PC or Apple Macintosh computer), the present method and apparatus, in one embodiment, can save state information for each of a plurality of views so that the plurality-of views can co-exist without compromising either the content owner's rights or the player manufacturer's design freedoms.

The present method and apparatus provide for a mechanism to allow the media content to query the network connectivity. This allows the media content to determine the source for additional content (e.g., enhanced, updated, new and other such content) being integrated with or displayed with the media content. The additional content can be streamed content, locally stored content and content stored on a portable storage medium. For example, with packaged media like a DVD, the additional content can be read from the ROM of the disc or from a server on the network. In one embodiment, the query for network connectivity includes a speed qualification that allows real-time decisions to be made based on the connection speed.

In one embodiment, the present method and apparatus identify the media content and/or streaming content, for example with packaged media, the title on the disc, a serial number and other such identification can be used. The present method and apparatus can further authenticate that media content, for example, verify that the title and the entire disc is authentic or verify the streaming content is from an authorized server.

In some previous media players (e.g., Microsoft WebTV™) the player provides a web browser to allow access to the Internet, or provides broadcast TV. However, these previous media players do not allow for web-content to be incorporated with or replace some or all of a TV stream. Further, these previous media players do not provide for the control of a media stream (for example, controlling the changing of an audio stream or jumping to a new chapter). In some previous broadcast TV systems, any Internet-technology based content associated with a broadcasted TV program is provided solely through the broadcaster. This is vastly different from the general-purpose and very open Internet where any web site can serve content and associate it with media content, and particularly with media content stored on a portable storage medium (e.g., DVD disc).

The present embodiment, on the other hand, provides a content owner with the capability to incorporate cached and/or streamed content with stored content (or replace stored content with cached and/or streamed content) while still maintaining control over the cached and streamed content. As such, the present embodiment allows enhanced content to be viewed while providing protection for the content owner. For example, a content owner can allow a user to access any number of internet sites that the content owner has authorized to be associated with the content. At the same time the content owner can prevent access to other web sites that are not authorized to be associated with the content. For example, Disney may authorize access to third party content, such as a toy manufacturer that makes figurines of characters in their movies. However, Disney may have a keen interest in preventing access to certain types of web sites or URLs, such as URLs associated with adult only content, from being associated with Disney's content. As such, the present embodiment allows content owner's (e.g., Disney) to prevent access to and/or association with third party content that is not authorized by the content owner.

The present embodiment can provide a user with two or more views that the user can switch back and forth between. FIG. 4 depicts a simplified block diagram showing two separate potential views provided by the present embodiment and transitions between the two views. For example, a first view 260 can be a view of the Internet and the second view can be a media content view 262. As described above, the media content view is controlled by the media content (e.g., the content on a DVD disc).

As such, the present embodiment provides two or more gateways to separate sets of content. In one embodiment, the two sets of content 260, 262 are available at any time for the user. In one embodiment, the user can shift between the two sets of content, for example by pressing a view button 270 on a control or remote control. The present embodiment can employ a graphical subsystem 138 (see FIG. 1) that can provide one or more graphic “planes” that allows the user to switch between the two sets of content. For example, two separate graphics planes can be employed where a first set of content is accessed through the first plane and the second set of content is accessed through the second plane. However, two graphics planes are not required. The two separate sets of content can be displayed through a single graphics plane such that one set of content is displayed at a time on the plane.

As discussed above, the strict separation of the two sets of content 260, 262 allows the content owner to control web and/or streaming content and the presentation of the content owner's assets (e.g., scripts, pictures, videos, and the like). In operation, the present method and apparatus allow general web content, such as web content banner advertisements and the like, to be displayed in the web view 260, as is typical in many web sites. However, the general web content can not be added to the media content view 262 by any third party unless authorized by the media content owner.

In the embodiment depicted in FIG. 4, a decision point 270 provides the transition between the web view 260 and the media content view 262. The decision point 270 can be a user's input, for example using a keyboard or a view button on the apparatus or a remote control. Additionally, the decision point can be configured such that there is a switch to the content view when a disc is inserted into the apparatus and/or a media player.

Typically, the decision point 270 can be activated at any stage, and at any site to transition between views 260, 262. When the transition occurs, state and/or history information is stored regarding the site and/or view being transitioned from. In entering the other view, the apparatus and method determine if state and/or history information is available for the view being entered. If there is history information, the apparatus returns to the position within the view being entered when previously switch out.

The web view 260 is activated when a user attempts to gain access to the network (e.g., the Internet). Upon initiation of the web view 260, typically a web “home” page or site 264 is accessed. The present embodiment accesses the Internet through substantially any means. For example, the web view can be controlled by a web browser. The web home page 264 can be the media player manufacturer's home page (e.g., with a logo and system specific information) a user specified page (e.g., myYahoo.com, CNN.com and the like) or substantially any other page previously defined. The web home page 264 is determined by the device settings. Often a manufacturer of the media player initially defines this home page.

Within the web view 260, the user can transition from the home page 264 to substantially any other Internet site 266, as is typical with other web browsers. As such, the web view allows a user to utilize the present embodiment to fully access the network and/or Internet. Further, the present embodiment maintains a history to allow the user to more easily navigate or steer his/her way through the Internet.

In one embodiment, the web view 260 operates in a similar manner as substantially any web browser. Further, the web view can be implemented through one of several web browsers known, including Microsoft's Internet Explorer™, America Online's NetScape and substantially any other independently designed or commercially available web browser. The contents of the web view are controlled by the web site owner of the site being accessed.

Typically, the web view 260 includes control features 272. The control features allow the user to navigate through the Internet to access desired web sites, information and/or content. Some examples of control features 272 can include, but are not limited to, back, forward, stop, favorite, home and the like. The web view can display additional control features 274 that allow the user to control the present method and apparatus. Some examples of the additional control features can include, but are not limited to, a decision control to allow the transition between web and content views, content selection, settings selection, history, help and other such control features. The web view additionally displays the web content 276.

The content view 262 provides a user with control over the media player and/or media content. Typically, the content view is displayed as defined by the media content. For example, the content view can initially be a content home page or site 280 (e.g., a DVD “Home”). Again, this content home page can be defined through the content. For example the content home can be a view stored on a disc in a predefined location or directory (e.g., /COMMON/INDEX.HTM from the disc ROM or CONNECT.HTM from a media player's FLASH file system (in memory)). Alternatively, the content home page can be defined on the disc as an Internet site, for example the content can provide instructions to access a specific web site, such as a site managed by the content owner or content distributor, or some other site.

The content view 262 can also contain control features 282. The content control features allow the user to control the media player and how the user wants to access the media content. The control features can be substantially any features, including, play, stop, fast forward, rewind and the like. The control features can additionally include features provided by the media content, for example, directories within the media content and options within the media content (e.g., director's interview, games, language and other such controls). The control features 282 can additionally provide access to the Internet, for example, links to the web home page 280, links to the content owner's web site and other links. The content view 262 typically includes information 284 about the media content, for example, one or more images of the content, the title, artists associated with the content, length of the content, list of the content and/or other such information.

As discussed above, the present embodiment is capable of providing enhanced content that is utilized by the media player in cooperation with existing content or in replace of existing content. The enhanced content can provide additional data that was unavailable at the time the content was initially released, the enhanced content can replace erroneous or faulty content and other such enhancements. In some embodiments, the media content is configured to take advantage of being able to access and utilize enhanced content. For example, a DVD can be configured to include content or instructions to access and retrieve enhanced content if available. These instructions can be stored in a predefined location to allow the media player to determine whether the media content is configured to utilize enhanced content. As an example, the DVD can include instructions in /COMMON/INDEX.HTM as described above.

If the disc in the drive, media stored in a cache or media content being received as broadcasted or streamed content, is not previously configured to utilize enhanced content (for example instructions within a ROM content), the present embodiment can be configured to attempt to access and utilize enhanced content. The media player can include operational instructions to gain access to enhanced content. For example, the player can include instructions within a CONNECT.HTM file that is an Internet page viewed while connecting to the Internet to pull online content for the media content. The instructions within the CONNECT.HTM can be customized according to content owner recommendations and media player manufacturers input.

In some embodiments, the content view 262 allows a user to access an enhanced operational mode 310, and to initiate the playing of the media content in a play mode 312. In the play mode 312,the user has access to the media content, for example a movie is displayed 313 (typically in full screen) from a DVD, display a movie from streaming content, music is played from a CD and other similar access. In some embodiments, the apparatus and method of the present embodiment operates similar to standard media players when operating in the play mode 312, to play the DVD, CD, streaming content or other media content.

Instead of accessing the play mode, the user can access the enhanced operational mode 310. In one embodiment, the media content automatically instructs the media player to activate the enhanced operational mode. For example, a CD or DVD disc can include a default file where the default file defines the mode in which the content is initiated. Further, media instructions to the player can be programmed in the bit stream of streaming media. Alternatively, the user can select to enter the enhanced mode 310. When accessing the enhanced operational mode, the user is provided with options relating to enhancements of the media content. In one embodiment, the enhanced operational mode 310 is defined by an Internet site, or is defined within the media content.

When media is authored with enhanced operational content, the authors can create the media such that a user's experience begins with the enhanced operational mode (for example, disc ROM) content. This is an option available to the media authors at the time of authoring. There may be certain features available from the enhance operational content that override the standard playback. As such, the enhanced operational mode allows the content to provide an enhanced, interactive experience upon selecting the enhanced mode 310, inserting the media (e.g., disc), or designed into the media stream upon starting.

The enhanced operation mode 310 allows the user to gain access to enhanced content if enhanced content related to the media content is available. The enhanced operational mode 310 typically includes one or more options or selectable items or options 316 to allow the user to steer through available options. The selectable items can direct or transfer the user to other Internet sites or windows. These selectable items 316 can include returning back to the content home page, selecting the content 314 to view the content in play mode 312, links to other sites and other similar options.

Selectable items 316 in the enhanced content (e.g., a button or hyperlink) allow the user to interact and choose a path of navigation. Selecting an item 316 can be accomplished through substantially any method including, but not limited to, a selection key on a remote control, media player remote and/or keyboard button (which can be labeled “SELECT” or “ENTER”), a pointer (e.g., a mouse) and other similar methods. Moving the selector around between items can additionally be achieved through four directional buttons: up, down, left and right, through a pointer device and the like. When the media content provides some selectable items (e.g., menus and/or selectable buttons and hyperlinks), the user can shift a selector using the four directional buttons until the desired item is highlighted. The user then selects the item using the enter or select key as described above.

In some embodiments, when in the content view 262, the media content 314 can occupy less than the full screen. When this is the case, the window 314 displaying the less than full view of the media content can be a selectable item. If the media content additionally includes selectable items 322, the user can select the window 314. This results in the media content become full screen 312. The user can then direct the selector within the full view 312 to highlight a desired selectable item 322. Alternatively, a “full screen” key or button on a keyboard, remote control or the like, can be used that has the sole function of enlarging or reducing the content can be provided. Additionally, when in full screen or play mode 312, an enhancement key or button can be provided to allow the user to transition to the enhanced operation mode 310 to allow the user to access the enhanced content with the media content reduced again to the content window 314.

From the enhanced option mode 310, the user can transition to other content 324. The other content 324 can be web sites that include enhanced content, alternate enhanced option modes and the like. The other content 324 can be accessed through selection within the enhanced option mode 310 or within the content (e.g., selection 322). For example, the user can select a hyperlink to an alternate web site that provides information about an author. This other content 324 is maintained within the content view 262. As such, the other content 324 is controlled by the content owner. This allows the content owner to provide enhanced content while maintaining control over the enhanced content associated with the content 313 being viewed.

It is noted that when in the web view 260, there is no access to the media content. The user and/or media player has to transition to the content view prior to gaining access to the media content.

In some embodiments, the content owner can make the user aware that additionally and/or enhanced content associated with the specific content, a specific scene, actor, location, artist, musician, author, cited text is available when in the play mode 312 of the content view 262. The content owner can author the media content in such a manner that a graphical overlay 330, completely within the content owner's control, can be shown for a short period of time on top of the content to signify additional content is available. The user can then select to view the enhanced content. For example, the user can select an “enter” button while the graphical overlay is present, the user can select an “Enhanced Content” button on a remote control and substantially any other method for pausing the linear playback and accessing this enhanced content.

FIG. 5 depicts a simplified block diagram showing transitions between modes of operation in the content view 262. The present embodiment allows the user to control the media player through substantially any method including, but not limited to, a keypad, a keyboard, a remote control, a pointer (e.g., a mouse) and other control methods. The controls can include buttons that perform specific functions. Some of the function buttons that can be included are a view button, a home button, a back button, an enhancement mode button, playback control buttons and content navigator buttons.

The view button causes a switch 339 between the web view 260 and the content view 262. The switch typically shifts to the web home site 264 or the content home site 280. In one embodiment, if the user is in the content view 262 but not at the content home page 280 when the user selects the view button, status and/or state information is saved regarding the content and the location within the content view (e.g., the play mode 312). When the user again selects the view button to return to the content view 262, the view transitions back to the position within the content view 262 that the user was at when the user initially selected the view button (e.g., back to the play mode 312).

A home button operates differently depending on which view the user is currently in. In the web view 260, the user selects the home button to go to the web home page 264. For example, the web home page could be the system manufacturer's home page, or a user specified page if allowed through configuration options. In the content view 262, the user transitions to the content home page 280 when the home button is selected. This content home page can be defined through an INDEX.HTM from the disc ROM or a CONNECT.HTM from a FLASH file system.

The back button operation additionally depends on which view the user is currently in. In the web view 260, the user steps back to the last web page viewed, similar to a standard web browser back button. In the content view 262, the user goes back to the last web page, content or content/web page combination that the user was on.

The enhancement mode button is dedicated to enhanced content events. These events are tailored by the media content and are context-sensitive to the content. For instance, on a certain scene of a movie being viewed through a DVD, the movie content can trigger an enhancement notification event such that if the user presses the enhancement mode button, the view transitions to a content enhancement control mode 310 where the user can access additional content, or transitioned to other content 324, such as a web site to obtain the enhanced content, for example find out more about a certain setting in a scene, such as a resort's advertisement or an actress'wardrobe.

When the content initiates this enhancement notification event, which could be done, for example, on a chapter or time basis, the navigator can optionally overlay a symbol or logo 330 transparently over the displayed content (e.g., overlay the symbol in the bottom right corner for 3-5 seconds) allowing the user to select the enhancement mode button or ignore the event as the user wishes. In one embodiment, this enhancement notification event is implemented through the enhancement media services 136 and the navigator's graphical subsystem 138 (see FIGS. 1 and 2).

FIG. 6 depicts a simplified flow diagram of a process 360 for generating a notification to a user in the form of a graphical overlay signaling that enhanced content is available. In step 362, the media content is being accessed by the user (for example, a movie from a DVD is being displayed) and an elapsed time is being monitored. In step 364, when a predefined elapsed time is reached, an event is triggered. For example, a JavaScript subscribes to an Info event. In step 366 the Info event causes the navigator 132 (see FIG. 1 and 2) to overlay a graphic icon over the video image. In step 370, it is determined if the user makes a selection to access the enhanced content. For example, it is determined if the user selects a button on the remote control.

If, in step 370, the user makes the selection, an event is triggered and the process 360 proceeds to step 372 where the event handler is invoked to process the selection event to access the enhanced content. In step 374, a bookmark is generated of the content to record the state of the content, and the content view history is maintained. In step 376, the enhanced content is displayed. In step 380, it is determined if the event has been terminated. For example, the user can selected to return to the content (e.g., using the “back” button), a time period may have elapsed, or other similar events can occur. If the termination event has not occurred, the process returns to step 376 to continue displaying the enhanced content. If the termination event has occurred, the process proceeds to step 382 where an event is triggered to unload the enhanced content. In step 384, the content is restored utilizing the bookmark. For example, the content page can be popped back off through the history stack.

If, in step 370, the selection to access the enhanced content is not received, the process transitions to step 386 where it is determined if the notification has been displayed for a predefined period (e.g., 5-10 seconds). If not, the process returns to step 366 to continue displaying the notification. If the time has expired, the process proceeds to step 390 where an unsubscribed event occurs triggering the removal of the notification from the display.

As discussed above, the present embodiment utilizes events to initiate any number of functions, operations and/or procedures. In many instances these events are implemented through ECMAScripts. ECMAScripts (JavaScripts) support several types of events. The event generator 170 (see FIG. 1) generates these events based on inputs which initiate the generation of the events. These inputs can be inputs from the user, from the media content, the media player, web content and other similar inputs. For example, an event can be initiated after a certain time has elapsed during the playing of a movie, or an event is generated when a user selects or “clicks” an option or button shown on a display, a button on a remote control or other selections. The event generated when a user selects a button is different than when the Internet browser loads a new document, page, Internet site, and the like. Different inputs, options or objects can generate different events. An “onclick” event is generated when a user selects a displayed button, but not when text is selected.

When an event occurs (e.g., a user's action against a certain object) an event handler is invoked. Certain events are triggered by classes of objects or options. An event handler is associated with each event type by programmatic control. As such, the media content can implement one or more event handlers associated with the various types of events supported. A single event handler can include many sub-categories of events, such as title events, chapter events, elapse time events and the like. Events and event handlers are more fully described in co-pending U.S. Pat. application Ser. No. 09/935,756, entitled PRESENTATION OF MEDIA CONTENT FROM MULTIPLE MEDIA SOURCES, filed on Aug. 21, 2001, which is incorporated herein by reference in its entirety.

In one embodiment, if the media content is not capable of utilizing enhanced content, then the content home page 280 (established through, for example, CONNECT.HTM) is displayed and a request for an Internet connection is made, or the content home page automatically connects to the internet based on the system configuration. If the Internet connection is established, then content from a web server is used (if authorized and/or provided by the content owner). If there is no online content available for the media content, the user is notified and allowed to resume access to the media content (e.g., allowed to-resume playback in play mode 312).

If there is no media content accessed (e.g., no disc in the drive) and the enhancement mode button is pressed, then the system requests the user to load the media content. For example, the system can display a “NO CONTENT” or “NO DISC” screen. If the enhancement mode button is selected and it is not active, a “not available” window or symbol is displayed.

The playback control buttons include standard transport control buttons (e.g., stop, play, previous, next, and the like) to control the media content access (for example, a video play) when there is content accessed. For example, playback control buttons provide control of streaming video displayed on the screen, either full screen 312 or in a window 314 embedded within the enhancement control 310 display.

The media content navigation buttons can include up, down, left, right, enter and other similar buttons. The content navigation buttons typically are configured not to work for content navigation (e.g., menu selections) unless the content is in full screen play mode 312. When in play mode, the content navigation buttons allow the user to transition between potential options and/or controls 332 associated with the content being accessed. Alternatively, if the content is in a window 314 embedded in a web page 310, or the content view is in an authorized web page 324 the content navigation buttons serve to navigate the web page highlights (e.g., for selecting HTML hyperlinks 334). The windowed content object 314 can also be configured as a selectable hyperlink 334. The user positions the highlight to the content window 314 and selects it by pressing “enter,” (or some other similar button) which causes the content to transition to full screen 312. Additionally, the present embodiment can be implemented with a free-moving pointer, such as a PC mouse, to allow selections of the content window 314 or other options.

The present embodiment allows the web view to be maintained as distinct and separate from a media view. At least two separate display flows (which can include operation and/or state information) are maintain and/or saved. These separate flows are distinguished by associating each flow with a separate domain or view. As such, the present method and apparatus are capable of maintaining separate flow histories for each of one or more media content assets and one or more Internet content assets.

FIG. 7 depicts a simplified block diagram showing transitions from one mode to another mode within a single view (e.g., content view 262) where histories and/or states are maintained for the separate views according to one embodiment of the present embodiment. The example shown in FIG. 7 depicts how a media content history (such as a streaming video being displayed) that can be saved and restored when transiting between the media content and an Internet site. In one embodiment, the media content history is saved in association with a given web or web plus media (e.g., audio/video) presentation.

For example, the apparatus and method initially provide a content home page 280. A user can select to view the media content so there is a transition 340 to the play mode 312. For example the user can select to view a streaming video, such that there is a transition 340 to display the streaming content in full screen 312. Alternatively, the media player can transition to play mode 312 to play the media content upon receipt of the streaming media or upon insertion of a disc within the player. While in the play mode 312, the user can select to transition 342 to a content enhancement control 310 or an internet page 310 and/or 324 at predefined times within the access to the media content or at substantially any point before, during and/or after accessing the media content.

The present embodiment maintains and/or tracks the user's transitions between content. If in the content view 262, the user is accessing an enhancement control page 310 that includes a content window 314 (for instance, ¼ screen size) playing a specific streaming video title with associated scene information and/or links 334 displayed within the page 310, and the user selects to switch or transition 344 to an other web site 324 (e.g., a transition to my.yahoo.com), the present embodiment allows the user to pick up the video exactly where the user left off when the user returns 346 to the enhancement control site 310. In saving history and/or state information, the present embodiment allows the user to transition between modes (280, 312, 310, 324) utilizing back, forward, home and other functional options.

The present embodiment keeps a stack or record of history information associated with the content view 262. When switching from the play mode 312 (or the enhancement control mode 310) to a web site 324, the media content is halted or paused and a content bookmark (which can include a title number, elapsed time, chapter number, angle number, sub-picture number, audio number and other state information or combination of information) is saved and kept in association with the content and/or active page (e.g., when transitioning from enhancement control 310 to another web site 324). In some instances, when there is a transition from play mode 312 to the enhancement control mode 310, the content is halted and a bookmark is recorded. The content bookmark is used to restore the content (e.g., content window 314 or full screen) upon returning from a transition (for example, from the play mode 312 to anther web site 324, and back to the play mode). In one embodiment, the elapsed time is utilized from the bookmark to resume playing the content at substantially the same point the playing of the content was previously halted. The elapsed time can allow the present embodiment to resume playing to within microseconds, and preferably within milliseconds of the point where the content was previously halted.

Still referring to FIG. 7, the user can select and transition 340 from content home page 280 to the full screen play mode 312. The present embodiment retains the transition within the history stack. If the user wishes to obtain enhanced content, the user can select and transition 342 to the enhancement control 310. In some instances, the media content is halted and a bookmark is stored. Again, the transition 342 is stored in the history stack, and if a bookmark was recorded, the bookmark is associated with the transition 342. The user can select to transition 344 to access enhanced content, for example, by selecting a hyperlink 334 to transition to a web site 324. The transition 344 is recorded in the history stack. If the content is still being played in the enhancement control mode 310 (e.g., in the small content window 314), a content bookmark is stored and associated with the transition history.

When the user wishes to return from the web site 324 to the enhancement control 310, the user can select the back button. The history stack is accessed and utilized to control the transition 346 back to the enhancement control 310. Further, the bookmark (if available) is accessed to restore the content to continue playing from the point in the content where the transition occurred. The user can also select the forward button to again return to the web site 324. The forward transition 348 is stored in the history stack along with a new bookmark.

From the enhancement control 310, the user can again select the back button where the history is accessed and directs a return transition 350 to the full screen play mode 312. The bookmark is also accessed to resume playing the content from the point where it was halted. The user can again utilize the forward button where the history stack directs the switch 352 to the enhancement control 310.

The user can transition 354 from the play mode 312 to the content home page 280 by again selecting the back button, where the history stack directs the return to the content home page. Further, a bookmark is recorded if the content is still being accessed (e.g., if a streaming video is still being displayed where the movie is not over). The forward button can transition 356 the user back to the play mode 312, with the bookmark returning the playback to the point where the playback of content was halted.

Similar transition histories are recorded for transitions within the web view. These transition histories can be employed similar to histories recorded in existing web browsers. As such, the user can steer through the Internet using the back, forward, home and other options. In one embodiment, the present embodiment maintains at least two separate history stacks, one for the content view and one for the web view, when both web and content views are accessed. This aids in maintaining control over the additional and/or enhanced content that is associated with the media content.

Still referring to FIG. 7, in one embodiment, the transition 342 from full screen 312 to control mode 310 with the partial screen 314 embedded therein can be a transition from one Internet site (full screen 312) to another Internet site (control mode 310). As such, the “back” 350 and “forward” 352 transitions additionally cause transitions between Internet sites.

In an alternate embodiment, the content (e.g., DVD video content) can be hosted by a single Internet page and displayed within that Internet page. For example, the content control mode 310 can be an Internet page that hosts and displays the video content. Within this control mode page 310, the video content can be displayed in full screen 312 or the video content can be display in a partial screen 314. However, the transition from full screen 312 to the partial screen 314 does not cause a transition from one Internet site to another Internet site. The transition from full screen to partial screen (and vise versa) is still within the same control mode Internet site 310. As such, the transition 342 from full screen to control mode, as well as the “back” and “forward” transitions 350 and 352, respectively, do not cause transitions between Internet sites, but cause a manipulation (e.g., resizing) of the content within the same control mode 310. In one embodiment, the video asset can be displayed in a frame with HTML content around the video.

In this implementation, the “back” 350 and “forward” 342 controls provide the manipulation of the content within the control mode Internet site 310 according to the history. Alternatively, and/or additionally, there can be other controls which cause a transition from full screen image within the control mode Internet site to the partial screen image within the control mode Internet site. For example, there can be a “Full” button on a remote control, displayed as a selection option and other similar controls that cause the transition between full and partial content imaging. Additionally, the history could be configured to track these transitions to allow “back” and “forward” to be utilized.

FIG. 8 shows a flow diagram of a process 410 for initiating media content in a content view to allow a user to access the content. Typically, with packaged media (e.g., DVD discs, CD discs and other such packaged media), the process 410 only has relevance when the packaged media is available to the content player, for example when the disc is inserted in the player's disc tray (or into an active disc slot if the player is a disc changer supporting multiple discs). For streamed media or some other delivery mechanism, the process 410 is applicable when the content is available to the player. For example, when the user selects the streamed content the content selection mechanism (e.g., a file sector in a streamed media file system) functions analogously to inserting the disc in a tray.

In step 412, the media content is made available (e.g., the user inserts a disc, or selects and receives streaming content). In step 414, it is determined if the media content is configured for enhanced content operation. This determination can be accomplished, for example, by locating the INDEX.HTM file in the COMMON directory on the disc or locating similar information within the streaming content.

If the content is not configured for enhanced operation, the process proceeds to step 416 where the type of content is determined. For example, the process can determine if the content is a DVD-Video or DVD-Audio or CD-DA. Such logic is known in the art and built into some DVD players, as such the logic is not further described. Once the type of content is determined, step 420 is entered where it is determined if the media content player (e.g., DVD player) is configured to access and utilize enhanced content. If not, step 422 is entered where the player is activated to provide standard playback of the content in the play mode and enhanced content features (or platform-specific features) are bypassed. For example, a standard DVD playback or standard CD-DA playback can be initiated.

If, in step 420, the content player is configured to utilize enhanced content, step 424 is entered where enhanced content operation is launched. For example, this can be launched with access to COMMON/INDEX.HTM to display the content home page in the content view. As described further below, the content itself can be updated dynamically if there is an Internet connection. If there is no Internet connection, the player provides standard playback.

With content that is not configured for enhanced operation (as determined in step 414) where the player is configured to provide enhanced content, a default content home page (e.g., CONNECT.HTM) is displayed in step 424 and an Internet connection (see below) is attempted to potentially provide web content for the content.

Following step 424, step 426 is entered where the process 410 determines if an Internet connection can be established. If an Internet connection cannot be established, step 432 is entered where standard playback of the content is launched. If an Internet connection can be established, step 434 is entered where it is determined if the content has additional or enhanced content that can be utilized. For example, a title search of the content can be performed to see if there is enhanced content associated with that title. If there is not enhanced content, the process proceeds to step 432 for standard playback.

If there is enhanced content, the process proceeds to step 436 where the content is authenticated. If the content is authenticated, step 440 is entered where enhanced content is delivered and can be displayed. This display of the enhanced content can be incorporated with the existing content (for example, replacing part of a movie), can be additional content (for example, additional song from a musical group), can be additional information about the content (for example, information about the director, actor and locations of a movie), and other such content. This step determines if there is updated or enhanced content to be made available from a web server.

If it is determined in step 414 that the content is configured for enhanced operation, the process proceeds to step 460 where the type of content is determined (DVD-video, DVD-audio, CD-DA, streaming video, streaming audio and the like). Once the type of content is determined step 462 is entered where it is determined if the media content player is configured to access and utilize enhanced content. If not, the process 410 proceeds to step 422 where the player is activated to provide standard playback of the content in the play mode and enhanced content features (or platform-specific features) are bypassed.

If, in step 462, the content player is configured to utilize enhanced content, step 464 is entered where it is determined if there are platform-specific binary files for this platform within the content. This can be accomplished by searching for a predefined directory structure associated with the playback system. If there are platform specific binaries, the process proceeds to step 466 where the player launches the platform specific binaries (whether DVD binaries, CD-DA binaries and the like).

If there are not specific binaries, step 470 is entered where the process 410 determines if an Internet connection can be established. If an Internet connection cannot be established, step 472 is entered where the media player initiates the content view. Typically, the media player displays the content home page as defined by the content (e.g., the content home page can be defined through an INDEX.HTML file within the content). This allows the user to being interaction with the content, for example to activate the play mode.

If an Internet connection can be established, step 474 is entered where it is determined if the content has additional or enhanced content that can be utilized. For example, a title search of the content can be performed to see if there is enhanced content associated with that title. If there is not enhanced content, the process proceeds to step 472 for content view launch.

If there is enhanced content, the process proceeds to step 476 where the content is authenticated. If the content is authenticated, step 480 is entered where enhanced content is delivered and can be displayed. This step determines if there is updated or enhanced content to be made available from a web server.

In one embodiment, identifying content includes creating a unique identifier based on a hash code derived from the content (for example, from an IFO file or files of the title). This would remain the same whenever the IFO file of the disc has not changed. Alternate methods may be used to create similar identifiers. This identifier can be used as a key or used to generate a key. The key can then be used to identify the content. In one embodiment, the key is used to search a title database. If the key is found the content is verified as identified.

In some instances, this generated key is insufficient for authentication. A pirated, “bit for bit” copy of the video files of a disc could thwart this authentication of the content. As such, the present embodiment can authenticate the content. Typically, the authentication is performed at a remote server by combining other data, such as a BCA number or volume information contained elsewhere with the generated key and that cannot be easily copied to provide the identifier. The identifier can include substantially any information that identifies the content including the title, the BCA number, the volume information, a serial number, a hologram, a watermark and substantially any other information that can be used to identify the content. In one embodiment, the identifier can be computed from the media content utilizing a checksum or similar mathematical computation.

In one embodiment, authentication of content is achieved by deriving the identifier information from the original content that cannot be copied or altered. For example, the information extracted and/or derived from the content can include, but is not limited to, volume information (e.g., in the header of a physical disc layer), a serial number (with a DVD, the serial number is sometimes found in the burst cutting area), a BCA of the disc and other such information. The authenticating information is readable by each drive (local and remote). However, the authenticating information is not capable of being copied from media to media, or from stream to stream (in the case of online content or content not distributed on physical media).

If the content is not authenticated, for example through the online database query checking for updated content, then only local content (e.g., disc ROM content in the content player) can be accessed. As such, a compact disc-recordable (CD-R) and compact disc-rewritable (CD-RW) copy of an audio CD goes through the authentication flow, it would not pass the authentication test and the enhanced online content would not be served to the consumer. The present embodiment can additionally track the number of attempts by non-authentic content to attempt to access enhanced content, which can be useful to the content owners. In one embodiment, prior to allowing access to or displaying enhanced content (e.g., HTML content), the identifier is retrieved or computed for the media content. This identifier is compared with expected identifiers for which the enhanced content has been authorized to be associated with. If the comparison fails, a failure notification can be issued (e.g., a failure HTML pop-up window is displayed).

In one embodiment, the media content can be associated with a list of URLs that are authorized to be associated with the media content. For example, a DVD containing a movie owned by New Line can be associated with a list of URLs to access content relating to other movies owned by New Line. Additionally, the media content can be associated with a list of URLs that are not authorized, and thus cannot be associated with, the media content. For example, streaming content of a Disney movie can be associated with a list of URLs containing adult only content with which the Disney movie specifically cannot be associated. The authorized and/or unauthorized lists can be stored directly with the media content (or delivered with the media content in the cast of streaming content). The lists can also be remotely stored and associated with media content through the media content's identifier when a user attempts to obtain enhanced content.

FIG. 9 depicts a simplified flow diagram of a process 520 for determining if enhanced content is authorized to be associated with media content. In step 522, the media content is loaded into the content view. In step 524, a user submits a request to access Internet content. In step 526, a media content identifier is received, extracted and/or calculated. In step 530 a list of authorized URLs is accessed. Again, this list can be stored with the media content or can be remotely accessed. In step 532, it is determined if the Internet content URL attempting to be accessed is included within the authorized list. If the Internet content URL is on the list, step 334 is entered where the user is allowed access to the authorized Internet content. If, in step 332, it is determined that the Internet content URL is not on the authorized list, the requested Internet content is not displayed, and an error or other notification is issued (e.g., an error message is displayed in a pop-up window).

The enhanced content can be provided by a third party. However, the third party may want to limit the content supplied to a user when the user is trying to access enhanced content. For example, the third party may want to only supply enhanced content that the third party (the media content owner, or some other entity) has determined to be associated with the media content. As such, the third party can verify and identification of the media content. This can be performed utilizing the title of the media content or other similar methods. Once identified, the third party can then determine what enhanced content is associated with the media content and limit a user's access to that enhanced content associated with the media content. In one embodiment, the third party does not perform authentication. The third party only identifies the media content to ensure the enhanced content accessed by the user is limited to enhanced content associated with the media content.

In one embodiment, the present method and apparatus additionally provide access to enhanced content even for media content that is not configured for enhanced interaction. The present method and apparatus can be configured to establish a connection to one or more remote servers (assuming the content player is coupled with the network and/or Internet) to determine if there is enhanced content available for current media content. If there is such enhanced content, the present embodiment offers substantially the same interactive experience to the user as content configured for the enhanced interaction affords. In one embodiment, the enhanced content is also authenticated prior to allowing access to that content.

When the player is in the play mode, authored enhanced content can display a symbol or logo to signify that there is additional and/or enhanced content available from content itself (e.g., stored on the disc ROM) and/or from a remote server. If the consumer clicks the enhancement button on the remote control (as described above), the content view is displayed and the user can transition to the content enhancement control mode for the content and allowing access to the additional and/or enhanced content.

In one embodiment, the key generated locally by the media player can be placed in an Internet cookie for use by the remote server. This method of delivery enables the server to retrieve the key out of the cookie and use it in verifying and authenticating the content, for example using a database lookup (either locally or remotely). The use of a cookie in this manner is opposite to how cookies are normally utilizes where the server issues the cookie. In the present embodiment, the key can be placed by the media player into the cookie. In one embodiment, cookies can be placed in multiple domains on the client. As such, the insertion of the key is not limited to a single domain, but instead can be applied to any number of domains.

The present embodiment can also provide for the content owner to be identified through a database lookup or initialization file (either locally in the player or on a remote server) and the domain set based upon the preset definition (e.g., Warner Bros., MGM and other content owners can be identified and the domain set based on the table entry for Warner, such as www.warnerbros.com). This database lookup or initialization file could contain several entries, or the single domain to be used for the content could be explicitly identified in a disc configuration file.

The present method and apparatus can connect directly to the enhanced content, or can connect through piping such that the media player can be routed through an intermediate sever and then routed to the correct domain to access the enhanced content. In one embodiment, the present embodiment can access alternate and/or enhanced content through an alternate or third server or domain. As such, a connection to substantially any online domain can be achieved through a separate communication pipe or socket connection. A communication component, which can be a separate functional component, running on the client device, can activate or open a separate communication pipe with a third server and place the key in an HTTP header file and post it to the third server. The third server can be substantially any server. The third server can then determine authorization and/or authentication, or the third party serve can route the key to a server containing the enhanced content. The authentication of the content can cause enhanced content to be pushed down to the client offering the user the enhanced content. Obtaining authentication through the communication piping has no domain restrictions. As such, the content player can display content from substantially any domain.

As described above, the present embodiment provides access to substantially any type of media content. Further, the present embodiment can be utilized in substantially any type of media player device including a DVD player, CD player, PVR and other devices where content is cached into the device, computers and other devices where content is pre-cached and then up-dated through a remote server, set-top-boxes, and substantially any other type of media player device. The content and/or enhanced content do not have to be physically stored content or maintained on a specific physical media. For example, the present embodiment can access video on demand (VOD) content that can be updated through the network connection. Further, the media content can be updated and/or enhanced prior to being transmitted to the user allowing the content owner control over the updated and/or enhanced content.

While the invention herein disclosed has been described by means of specific embodiments and applications thereof, numerous modifications and variations could be made thereto by those skilled in the art without departing from the scope of the invention. 

1. A method for providing access to media content, comprising the steps of: initiating a first mode, the first mode including programmatic content and a multimedia window defined within the programmatic content, the multimedia window for display of multimedia content; receiving an input; and selecting the multimedia window in response to the received input.
 2. The method of claim 1 further comprising initiating a second mode for the multimedia content.
 3. The method of claim 2, wherein the second mode for the multimedia content is a full screen view.
 4. The method of claim 2, further comprising: receiving a second input; and returning to the first mode including the programmatic content and the multimedia window.
 5. The method of claim 2 further comprising indicating the presence of additional assets.
 6. The method of claim 5 wherein the indication of the presence of additional assets is a graphical overlay.
 7. The method of claim 5 wherein the indication of the presence of additional assets is a light on a remote control.
 8. The method of claim 1 wherein the programmatic content further defines a control feature.
 9. The method of claim 8 wherein the control feature includes providing access to the internet and providing options for media content.
 10. The method of claim 8 wherein the control feature includes providing options for the programmatic content.
 11. The method of claim 10 wherein the options for the programmatic content include language options.
 12. The method of claim 8 wherein the control feature includes providing options for the multimedia content.
 13. The method of claim 12 wherein the options for the multimedia content include language options.
 14. The method of claim 1 further comprising downloading additional programmatic content.
 15. The method of claim 14 further comprising displaying the additional programmatic content.
 16. The method of claim 14 wherein the programmatic content is a control structure.
 17. The method of claim 14 wherein the programmatic content is web content.
 18. The method of claim 14 wherein the programmatic content comprises a markup language.
 19. The method of claim 14 wherein the additional programmatic content is based upon a version of the multimedia content.
 20. The method of claim 14 wherein the additional programmatic content is based upon a version of the programmatic content.
 21. A method for providing access to content, comprising the steps of: outputting audio/video (AV) content stored on a portable storage medium; monitoring for an event while outputting the AV content; and notifying a user that content related to the AV content is available in response to receiving the event.
 22. The method of claim 21, further comprising the step of generating a notification event, wherein the step of notifying is initiated by the notification event.
 23. The method of claim 21, wherein the step of notifying includes generating a graphical overlay and displaying the graphical overlay over at least a portion of a display of the video content.
 24. The method of claim 21, wherein the step of notifying includes turning on a light on a remote control.
 25. The method of claim 21 further comprising displaying the content related to the AV content in response to an input signal.
 26. The method of claim 21 further comprising displaying the content related to the AV content along with the video content.
 27. The method of claim 26 wherein the video content is displayed within a subset area defined by programmatic content.
 28. The method of claim 21 wherein the content related to the AV content is programmatic content.
 29. The method of claim 28 further comprising displaying the programmatic content.
 30. The method of claim 28 wherein the programmatic content is a control structure.
 31. The method of claim 28 wherein the programmatic content is web content.
 32. The method of claim 28 wherein the programmatic content comprises a markup language.
 33. The method of claim 28 wherein the programmatic content is based upon a version of the AV content.
 34. A method comprising: verifying an identification on a portable storage medium; and controlling access to a network as a function of the verifying.
 35. The method of claim 34 wherein said controlling said access comprises controlling access to a content stream from said network.
 36. The method of claim 34 wherein said controlling said access comprises controlling access to multimedia content from said network.
 37. The method of claim 36 wherein the controlling of said access to said multimedia content including controlling access to multimedia content.
 38. The method of claim 37 further comprising: displaying said multimedia content as a function of said controlling.
 39. The method of claim 36 further comprising: initiating a first mode in response to the controlling of said access, the first mode including programmatic content and a multimedia window defined within the programmatic content, the multimedia window for display of multimedia content; receiving said multimedia content from said network; and selecting the multimedia window in response to the received multimedia content.
 40. The method of claim 39 further comprising initiating a second mode for the multimedia content.
 41. The method of claim 40, wherein the second mode for the multimedia content is a full screen view.
 42. The method of claim 40, further comprising: receiving a second input; and returning to the first mode including the programmatic content and the multimedia window. 